/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package simulation;

import utilities.DrawingBean;
import base.node.NodeArchBean;
import base.node.WSNode;
import java.util.Vector;

/**
 * Includes all user options and data to perform the simulation
 * @author Arvanitis Ioannis
 */
public final class GUIOptionManager {

    private static int commOffset;
    private static int totalNodes;
    private static int simTimeMin;
    private static int simTimeSec;
    private static int simTotalTimeInSec;
    private static int frequency;
    private static int timeScale;
    private static int timeScaleTranception;
    private static int timeScaleProcessing;
    private static String ip;
    private static String mapName;
    private static int mapWidthMeters;
    private static int mapHeightMeters;
    private static int mapWidthObstacles;
    private static int mapHeightObstacles;
    private static int mapWidthRain;
    private static int mapHeightRain;
    private static Vector<DrawingBean> obstacles;
    private static int nodeCategories;
    private static Vector<NodeArchBean> nodeArchPerCategory;
    private static Vector<DrawingBean> nodes;
    private static WSNode[] wsnodes;
    private static boolean rpgm;
    private static boolean inplace;
    private static int maxVelocity;
    private static int grid;
    private static Vector<DrawingBean> rain;
    private static int heavyAttenuation;
    private static int lightAttenuation;

    public static int getCommOffset() {
        return commOffset;
    }

    public static void setCommOffset(int commOffset) {
        GUIOptionManager.commOffset = commOffset;
    }

    public static int getMapHeightObstacles() {
        return mapHeightObstacles;
    }

    public static void setMapHeightObstacles(int mapHeightObstacles) {
        GUIOptionManager.mapHeightObstacles = mapHeightObstacles;
    }

    public static int getMapHeightMeters() {
        return mapHeightMeters;
    }

    public static void setMapHeightMeters(int mapHeightMeters) {
        GUIOptionManager.mapHeightMeters = mapHeightMeters;
    }

    public static int getMapWidthMeters() {
        return mapWidthMeters;
    }

    public static void setMapWidthMeters(int mapWidthMeters) {
        GUIOptionManager.mapWidthMeters = mapWidthMeters;
    }

    public static String getMapName() {
        return mapName;
    }

    public static void setMapName(String mapName) {
        GUIOptionManager.mapName = mapName;
    }

    public static int getMapWidthObstacles() {
        return mapWidthObstacles;
    }

    public static void setMapWidthObstacles(int mapWidthObstacles) {
        GUIOptionManager.mapWidthObstacles = mapWidthObstacles;
    }

    public static Vector<NodeArchBean> getNodeArchPerCategory() {
        return nodeArchPerCategory;
    }

    public static void setNodeArchPerCategory(Vector<NodeArchBean> nodeArchPerCategory) {
        GUIOptionManager.nodeArchPerCategory = nodeArchPerCategory;
    }

    public static int getNodeCategories() {
        return nodeCategories;
    }

    public static void setNodeCategories(int nodeCategories) {
        GUIOptionManager.nodeCategories = nodeCategories;
    }

    public static int getSimTimeMin() {
        return simTimeMin;
    }

    public static void setSimTimeMin(int simTimeMin) {
        GUIOptionManager.simTimeMin = simTimeMin;
    }

    public static int getSimTimeSec() {
        return simTimeSec;
    }

    public static void setSimTimeSec(int simTimeSec) {
        GUIOptionManager.simTimeSec = simTimeSec;
    }

    public static int getSimTotalTimeInSec() {
        return simTotalTimeInSec;
    }

    public static void setSimTotalTimeInSec(int simTotalTimeInSec) {
        GUIOptionManager.simTotalTimeInSec = simTotalTimeInSec;
    }

    public static Vector<DrawingBean> getObstacles() {
        return obstacles;
    }

    public static void setObstacles(Vector<DrawingBean> obstacles) {
        GUIOptionManager.obstacles = obstacles;
    }

    public static int getTotalNodes() {
        return totalNodes;
    }

    public static void setTotalNodes(int totalNodes) {
        GUIOptionManager.totalNodes = totalNodes;
    }

    public static Vector<DrawingBean> getNodes() {
        return nodes;
    }

    public static void setNodes(Vector<DrawingBean> nodes) {
        GUIOptionManager.nodes = nodes;
    }

    public static Vector<DrawingBean> getRain() {
        return rain;
    }

    public static void setRain(Vector<DrawingBean> rain) {
        GUIOptionManager.rain = rain;
    }

    public static int getHeavyAttenuation() {
        return heavyAttenuation;
    }

    public static void setHeavyAttenuation(int heavyAttenuation) {
        GUIOptionManager.heavyAttenuation = heavyAttenuation;
    }

    public static int getLightAttenuation() {
        return lightAttenuation;
    }

    public static void setLightAttenuation(int lightAttenuation) {
        GUIOptionManager.lightAttenuation = lightAttenuation;
    }

    public static int getFrequency() {
        return frequency;
    }

    public static void setFrequency(int frequency) {
        GUIOptionManager.frequency = frequency;
    }

    public static String getIp() {
        return ip;
    }

    public static void setIp(String ip) {
        GUIOptionManager.ip = ip;
    }

    public static int getMapHeightRain() {
        return mapHeightRain;
    }

    public static void setMapHeightRain(int mapHeightRain) {
        GUIOptionManager.mapHeightRain = mapHeightRain;
    }

    public static int getMapWidthRain() {
        return mapWidthRain;
    }

    public static void setMapWidthRain(int mapWidthRain) {
        GUIOptionManager.mapWidthRain = mapWidthRain;
    }

    public static int getGrid() {
        return grid;
    }

    public static void setGrid(int grid) {
        GUIOptionManager.grid = grid;
    }

    public static boolean isInplace() {
        return inplace;
    }

    public static void setInplace(boolean inplace) {
        GUIOptionManager.inplace = inplace;
    }

    public static int getMaxVelocity() {
        return maxVelocity;
    }

    public static void setMaxVelocity(int maxVelocity) {
        GUIOptionManager.maxVelocity = maxVelocity;
    }

    public static boolean isRpgm() {
        return rpgm;
    }

    public static void setRpgm(boolean rpgm) {
        GUIOptionManager.rpgm = rpgm;
    }

    public static int getTimeScale() {
        return timeScale;
    }

    public static void setTimeScale(int timeScale) {
        GUIOptionManager.timeScale = timeScale;
    }

    public static int getTimeScaleProcessing() {
        return timeScaleProcessing;
    }

    public static void setTimeScaleProcessing(int timeScaleProcessing) {
        GUIOptionManager.timeScaleProcessing = timeScaleProcessing;
    }

    public static int getTimeScaleTranception() {
        return timeScaleTranception;
    }

    public static void setTimeScaleTranception(int timeScaleTranception) {
        GUIOptionManager.timeScaleTranception = timeScaleTranception;
    }

    public static WSNode[] getWsnodes() {
        return wsnodes;
    }

    public static WSNode getWsnodes(int index) {
        return wsnodes[index];
    }

    public static void setWsnodes(WSNode[] wsnodes) {
        GUIOptionManager.wsnodes = wsnodes;
    }
}
